/*******************************************************************
 *
 * Copyright (C), 2021-2022, LS, All rights reserved.
 *
 * Author      : 
 * Create Time : 2020-11-02
 * Version     : v0.1
 * Description : 
 *******************************************************************/
#ifndef _APP_PWR_MGR_H_
#define _APP_PWR_MGR_H_

/*----------------------------Head file----------------------------*/
#include "stdint.h"
#include "stdbool.h"
#include "user_config.h"

/*----------------------------macro file---------------------------*/
typedef enum {
    PWR_MGR_MASK_BUTTON = 0x01,
    PWR_MGR_MASK_SKIP_ALG = 0x02,
} app_pwr_mgr_mask_t;

/*----------------------------type define--------------------------*/

/*--------------------------var declarative------------------------*/

/*-------------------------func declarative------------------------*/
extern void app_pwr_mgr_init(void);
extern void app_pwr_mgr_enter_sleep_directly(void);

#if(WORK_IN_SLEEP_MODE)
extern void app_pwr_mgr_enter_sleep(app_pwr_mgr_mask_t mask);
extern void app_pwr_mgr_exit_sleep(app_pwr_mgr_mask_t mask);
#else
extern void app_pwr_mgr_enter_sleep(void);
extern void app_pwr_mgr_exit_sleep(void);
#endif

/*-----------------------------------------------------------------*/

#endif // _APP_PWR_MGR_H_

